﻿using System;
using System.Collections.Generic;
using BlobNet.Base;
using BlobNet.Base.Collections;
using BlobNet.TestsCommon.UnitTests.Dummy;

namespace BlobNet.FunctionalTests.Dummy
{
    [Serializable]
    internal class DummyBlobDomainHolder : BlobDomain
    {
        public DummyBlobDomainHolder(Guid entityId) : base(entityId)
        {
        }

        public string StringProperty
        {
            get { return GetStatusValue<string>("StringProperty"); }
            set { SetStatusValue("StringProperty", value); }
        }

        public int IntProperty
        {
            get { return GetStatusValue<int>("IntProperty"); }
            set { SetStatusValue("IntProperty", value); }
        }

        public BlobList<DummyBlobPartA> CollectionProperty
        {
            get { return GetStatusValue<BlobList<DummyBlobPartA>>("CollectionProperty"); }
            set { SetStatusValue("CollectionProperty", value); }
        }

       

        public DummyBlobPartB BlobPartB
        {
            get { return GetStatusValue<DummyBlobPartB>("BlobPartB"); }
            set { SetStatusValue("BlobPartB", value); }
        } 
       
    }
}